The approaches described in this section could be pursued, but are not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated herein, the approaches described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
Zoom operations allow users of computing applications to change the view of the display or a display region within the application. For example, users often “zoom-in” on a particular focal point within a display or display region, causing user interface elements within the display surrounding the focal point to become enlarged, to come into greater focus, or to increase the resolution or level of detail at which the elements are displayed. As used herein, the term user interface element includes any element that may be visible on a user interface. User interface elements that are further away from the focal point of the zoom operation may sometimes be removed from the viewable display area to make room for the enlarged area. Users may also “zoom-out” from a particular focal point, causing user interface elements to shrink or decrease the level of detail at which the elements are shown, sometimes bringing elements outside of the viewable display area into view. A zoom operation may change the scale of the entire display or some aspect of the display.
Zoom functionality has been integrated into a variety of computer-based applications. For example, project management and graphic design programs sometimes allow users to zoom-in or zoom-out to view or edit a graphic at various levels of detail. The level of detail or zoom desired may be selected, for example, using a drop-down list of different zoom levels, or by using some combination of user input device shortcuts.
During a zoom operation such as a zoom-in or zoom-out operation, the display area is often re-rendered in order to reveal or hide additional details about the objects in the display area that are visible or available at one zoom level, but not another. However, the ability to re-render the display area often depends on hardware or network-based resources, and when those resources are limited, re-rendering the display area may affect the user experience. This is particularly true when the user input device being used to select a zoom level is a scrolling mechanism, such as a scroll-wheel on a mouse, as the use of a scrolling mechanism to select a zoom level often results in the user “scrolling through” several zoom levels, causing the display for each intermediate zoom level to be re-rendered, as well as the finally selected zoom level.
Some user input devices are more problematic for performing zoom operations than others. For example, when the user input device includes a scroll wheel that provides no tactile feedback (e.g., a clicking sensation) while a user turns the scroll wheel, the user may accidentally scroll beyond the desired zoom level. Scroll wheels that provide tactile feedback, on the other hand, may help the user to determine an approximate zoom level based on the number of “clicks” the scroll wheel delivers in response to the input. By feeling the feedback from the scroll wheel the user may, over time, associate a certain number of clicks with a certain zoom level. However, many user input devices do not include a tactile feedback mechanism, resulting in the execution of zoom operations at unpredictable zoom levels.